Legacy applications are applications that typically have been inherited from languages, platforms, and/or techniques earlier than the current Internet-based technology. Most enterprises have legacy applications, and associated legacy databases, that still today serve critical business needs. Regardless of the fact that such applications are often large, monolithic, and difficult to modify, they continue to be used. Generally it is due to the cost associated with replacing or redesigning the applications, and often despite their poor competitiveness and compatibility with modern equivalents.
There are many advantages to migrating the operation of a business to a distributed system. Often the Internet is used as the preferred network linking the distributed system. However, legacy applications were not developed for Internet-based communication in mind. Legacy applications were developed to execute on stand alone systems, which may be deployed in a multi-user environment, like a terminal server. Their continued use restricts enterprises from joining the e-commerce world, in which business is conducted over the Internet.
One obvious solution is to rewrite the legacy application in a modern development language and in a manner that complies with more recently developed Internet programming models. However, rewriting involves formidable costs and risks, especially when such applications share common data. Also, legacy applications typically have business logic and interface logic intermixed. Dividing out the business logic from the interface logic is often a formidable task.
Also, the databases used by legacy applications contain data accessible in a format not normally suited for Internet applications. Thus, there is a need to address the difficulty of using legacy applications with newer technology.
US Patent Publication 2002/0178170 A1 discloses a system wherein such databases are retained, and an interface or “connector” is provided for each database for converting data between a hierarchical or multi-valued simple data structure used for the legacy database and a rich data structure used for Internet databases.
US Patent Publication 2003/0046639 A1 discloses a single platform system for facilitating creation, exchange, presentation and management of documents, a collection of data that may be in any format or form, to support business transactions. The single platform system also links to, and integrates, legacy systems, messaging gateways, and other enterprise information systems.
In the article entitled “Choosing a Middleware for Web-Integration of a Legacy Application” published in Software Engineering Notes vol 25 no 3, pages 50-53, middleware is used as a platform to support integration of a legacy application running on mainframe and a web-server. Hence a three-tier client server architecture is created.
A method and system for integrating legacy applications into a platform independent environment are disclosed in U.S. patent application Ser. No. 10/769,435, filed on Jan. 30, 2004, in which a portable executable (PE) is invoked through a platform-independent interface by processing an export table in the PE to obtain the function names used in the PE. A resources table in the PE is processed to obtain a user interface used in the PE. A platform-independent user interface is generated based on the user interface used in the PE. At least one of the functions used in the PE is invoked through the platform-independent user interface.